package com.cpe.transfer.physique;

import java.util.List;

import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
import org.springframework.util.Assert;

import com.cpe.data.domain.physique.Physique;
import com.cpe.data.domain.physique.PhysiqueInfo;
import com.github.pagehelper.PageInfo;
import com.google.common.collect.Lists;

@Component
public class PhysiqueTransfer {
	/**
	 * 实体分页-->响应分页
	 */
	public PageInfo<PhysiqueInfo> toPageInfo(List<Physique> physiques) {
		Assert.notNull(physiques);
		PageInfo<Physique> pageInfo = new PageInfo<>(physiques);
		PageInfo<PhysiqueInfo> pageResp = new PageInfo<>();
		BeanUtils.copyProperties(pageInfo, pageResp);
		List<PhysiqueInfo> infoList = Lists.newArrayList();
		for (Physique physique : physiques) {
			infoList.add(toInfo(physique));
		}
		pageResp.setList(infoList);
		return pageResp;
	}

	/**
	 * 实体-->响应
	 */
	public PhysiqueInfo toInfo(Physique physique) {
		Assert.notNull(physique);
		PhysiqueInfo info = new PhysiqueInfo();
		BeanUtils.copyProperties(physique, info);
		return info;
	}
}
